

public class Main {

	public static void main(String[] args) {
            System.out.println(args.length);
		 int arg1 = Integer.parseInt( args[ 0 ] );
		 int arg2 = Integer.parseInt( args[ 1 ] );
		 int arg3 = Integer.parseInt( args[ 2 ] );
		
//		int arg1 = 10;
//		int arg2 = 2;
//		int arg3 = 7;
            
            int jugadores = arg1;
		int salto = arg2;
		int jugador = arg3;
		ListaGenericaFIFO<String> lista = new ListaGenericaFIFO<String>();

		for (int pos = 1; pos <= jugadores; pos++) {
			lista.inserir(Integer.toString(pos));
		}

		System.out.println("Lista de jugadores");
		System.out.println(lista.llistar());

		Integer jugadorEliminado = salto + 1;
		String valor;

		while (!lista.estaBuida() && lista.elementos() > 1) {
			for (int pos = 0; pos < salto; pos++) {
				lista.seguent();
			}
			// Valor actual a eliminar
			jugadorEliminado = lista.posicioActual();
			// Avanzamos uno más para situarnos en el correcto al eliminar el
			// jugador correspondiente
			lista.seguent();
			valor = lista.elimina(jugadorEliminado);
			if (valor.equals(String.valueOf(jugador))) {
				System.out.println("JUEGO PERDIDO. JUGADOR " + valor
						+ " ELIMINADO. Posicion: " + jugadorEliminado);
                                
			} else {
				System.out.println("Eliminador jugador: " + valor
						+ ". Posicion: " + jugadorEliminado);
			}
		}
		System.out.println("JUGADOR VENCEDOR: "
				+ lista.obte(lista.posicioActual()));
	}
}